For many years voice telephone service was implemented over a circuit switched network commonly known as the public switched telephone network (PSTN) and controlled by a local telephone service provider. In such systems, the analog electrical signals representing the conversation are transmitted between the two telephone handsets on a dedicated twisted-pair-copper-wire circuit. More specifically, each of the two endpoint telephones is coupled to a local switching station by a dedicated pair of copper wires known as a subscriber loop. The two switching stations are connected by a trunk line network comprising multiple copper wire pairs. When a telephone call is placed, the circuit is completed by dynamically coupling each subscriber loop to a dedicated pair of copper wires in the trunk line network that completes the circuit between the two local switching stations.
A key advantage of a circuit switched network is that a dedicated circuit is continually connected between the two endpoints and capable of carrying information at a fixed rate (in this case, a voice audio signal) for the entire duration of the call. A disadvantage of a circuit switched network is the size and expense of trunk lines between switching stations that must be large enough to provide a dedicated pair of copper wires for each circuit.
More recently the trunk lines between switching stations have been replaced with fiber optic cables. A computing device digitizes the analog signals of each circuit and formats the digitized data into frames such that multiple conversations can be transmitted simultaneously on the same fiber utilizing a time division protocol. At the receiving end, a computing device reforms the analog signals of each circuit for coupling to the copper wires of the subscriber loop. Fiber optic cable increases trunk line capacity between switching stations and simultaneously reduces trunk line cost.
More recently yet, telephone service has been implemented over the Internet. Advances in the speed of data transmissions and Internet bandwidth have made it possible for telephone conversations to be communicated using the Internet's packet switched architecture and the TCP/IP protocol.
Software and hardware peripherals are available for use with personal computers which enable the two-way transfer of real-time voice information via an Internet data link between two personal computers (each of which is referred to as an end point), each end point computer includes appropriate hardware for driving a microphone and a speaker. Each end point operates simultaneously as both a sender of real time voice data and as a receiver of real time voice data to support a full duplex voice conversation. As a sender of real time voice data, the end point computer converts voice signals from analog format, as detected by the microphone hardware, to digital format. The software then facilitates data compression down to a rate compatible with the end point computer's data connection to an Internet Service Provider (ISP) and facilitates encapsulation of the digitized and compressed voice data into the TCP/IP protocol, with appropriate addressing to permit communication via the Internet.
As a receiver of real time voice data, the end point computer and software reverse the process to recover the analog voice information for presentation to the other party via the speaker associated with the receiving computer.
In a separate field of development, cable television providers have begun utilizing their co-axial cable networks and hybrid fiber optic/coaxial cable network (HFC networks) to provide internet services. A subscriber uses a cable modem to communicate IP frames over the HFC network. The cable modem operates as a bridge transferring IP frames between the HFC network and a local network port, such as an Ethernet port or USB port, which in turn couples to a computing device.
More recently, cable service providers have contemplated providing telephone service over their HFC networks. To provide telephone service, the subscriber uses a multimedia terminal adapter (MTA). The MTA operates as a VoIP client for setting up and maintaining VoIP calls over the HFC network and emulates a PSTN central office for interfacing with a subscribers legacy PSTN equipment, such as telephones and fax machines, over a twisted pair subscriber loop.
The MTA may be embedded in the cable modem. When a cable modem with embedded MTA is utilized, the cable modem operates as a bridge or a switch between the HFC and each of the MTA and any computer device coupled to the local network port. Each of the MTA and the computer independently obtain a distinct global IP address from the service provider.
Another known solution is a stand alone MTA which couples to the cable modem's local network port. An advantage of a stand alone MTA is that it operates with legacy cable modems. A problem with a stand alone MTA is that the cable modem can not be shared with any other computing device because the MTA occupies the cable modem's local network port.
In a third known solution a switch enabled stand alone MTA (such as early versions of the MTA 3328 available from Innomedia, Inc. of Milpitas, Calif.) includes a switch circuit and a downlink local network port in conjunction with MTA circuitry. A computing device may be coupled to the downlink local network port. Each of the computing device and the MTA circuit coupled to the cable modem through the switch circuit and each independently obtains a unique global IP address from the service provider. As such, the cable modem can be shared between the stand alone MTA and a computing device. A problem with this solution is that the quantity of unique global IP addresses is limited and it is costly for the service provider to provide two globally unique IP addresses to a customer who utilizes the cable modem for both internet connectivity and telephony services.
In another unrelated field, network address and port translation gateways (NAPT gateway) have been developed to allow multiple devices (each assigned a non-globally-unique local area network IP address) to share a single globally unique IP address assigned to the gateway. Each IP frame includes an IP header appended onto either a TCP or UDP frame. The TCP or UDP frame comprises a TCP or UDP header appended onto a higher level frame (or a portion of a higher level frame). The higher level frame may comprise higher level headers and payload.
The IP header comprises various miscellaneous headers along with a source IP address and a destination IP address. The IP source address comprises the IP address of the system which generated the IP frame. In the case of a computer coupled to a NAPT gateway, the source IP address will be a locally assigned IP address selected from a group of IP addresses reserved for use on local area networks and which are non-routable on the Internet.
The TCP or UDP header comprises various headers along with a source port number and a destination port number. The destination port number is a logical port number associated with the particular application on the destination computer that is to receive the payload. The use of a destination port number enables the destination computer to route the frame to the correct application. The source port number is a logical port number assigned by the source computer and is associated with the application that generated the payload. Use of the source port number enables the destination computer to return a frame, such as an acknowledge, back to the source application on the source computer.
TCP/IP connections are typically used for data transfer where data accuracy is more important than timely delivery of frames while UDP/IP channels are typically used for real time VoIP frames where timely delivery is more important that data accuracy. The miscellaneous headers of a UDP/IP frame are typically shorter than the UDP/IP headers of a TCP/IP frame.
To enable multiple devices to share a single globally unique IP address, a NAPT gateway will translate outbound frames by replacing the local source IP address with the globally unique IP address assigned by the service provider to the gateway and by replacing the source port number with a port number selected by the gateway. A record of the local source IP address, the original source port number, the translated globally unique IP address and the translated source port number are stored in a translation tables. As such, when a response frame, such as an acknowledge frame, is received from the gateway, the gateway may reverse translate the inbound frame so that it may be delivered to the correct application on the correct computer on the local area network.
An NAPT gateway can be coupled to the local area network port of a cable modem to enable multiple IP devices to share a single globally unique IP address assigned to the gateway. However, a stand alone MTA can not be one of those devices. A challenge associated with connecting an MTA to an NAPT gateway is that VoIP call set up protocols require a VoIP client to specify a port number that the other client may utilize as a destination port number for sending a stream of UDP/IP frames to the MTA. There is no generally available mechanism for enabling a device on a local area network (behind a NATP gateway) to define a gateway port number and reverse translation parameters for receipt of inbound frames.
To allow a stand alone MTA to properly operate, it must be coupled to the cable modem and independently obtain a globally unique IP address from the service provider. An NAPT gateway can be coupled to the switch enabled MTA. Such structure would enable multiple computers and such MTA to share the cable modem connection to the HFC. However, this structure does not resolve the problem that the service provider must still assign separate and distinct globally unique IP addresses to each of the MTA and the NAPT gateway.
As such, a need exists for a solution that enables voice telephone service to be provided over an HFC network that operates in conjunction with legacy cable modems and permits the sharing of the cable modem and a single globally unique IP Address assigned by a service provide amongst VoIP services and multiple computers.